#ifndef SPUT_H_
#define SPUT_H_
/*********************************************************/
class sMsg;

#include "sMsg.h"
#include <Poco/DOM/NodeIterator.h>
#include <string>
/*********************************************************/
class sPut : public sMsg
{
private:
	// Friend classes
	friend class sMsg;

	// Variables
	std::string		fFileName;		// Filename of the file data carried in the packet
	std::string		fHost;			// The host that requested to upload a file

	// Methods
	void deserialize(Poco::XML::NodeIterator&);	// Deserializes an execute job

protected:
public:
	// Methods
	virtual std::string serialize() const;		// Serialize the job to an xml string
	virtual void execute();				// Execute the put job
	void setFileName(const std::string& file);	// Set the filename
	std::string getFileName() const;		// Returns the filename
	void setHost(const std::string& host);		// Set the host
	std::string getHost() const;			// Get the host

	// Construction & Destruction
	sPut();
	~sPut();
};
/*********************************************************/
#endif // SPUT_H_
